In recent years, there has been an increase in the number of cases in which a wireless technique is applied to a backhaul or the like that connects a base station of a mobile phone network to a core network so that an entire network is quickly built at low cost. In general, however, a wireless network has specific problems. Specifically, the wireless network has lower reliability than a wired network and a link rate of the wireless network is not constant.
For example, the rate of a wireless link may be dynamically changed by changing a modulation scheme and/or a coding rate based on a change in a wireless environment in order to maintain a bit error rate at a level that is equal to or lower than a certain value. Especially, for example, when the wireless environment becomes worse owing to a change in the weather or the like, the modulation scheme and/or the coding rate are changed to a lower-rate modulation scheme and/or a lower coding rate. Thus, the efficiency of transmission may be reduced and the rate of the wireless link may be significantly reduced. When the link rate is reduced, a packet is easily delayed or lost owing to overflow of a buffer with packets that are not transmitted.
As described above, a failure easily occurs in a wireless network, compared with a wired network. Thus, a technique for improving the reliability of the wireless network is necessary.
As a related technique for improving the reliability of a network, a redundancy is known.
Normally, an operator guarantees a very high utilization of, for example, 99.99% in a service level agreement (SLA) for a network system in some cases. However, a utilization that is calculated from a failure rate of a network device is lower than a utilization to be guaranteed in many cases. In addition, in a trunk over which data from multiple users is multiplexed, when a failure occurs in a single part of a network system, communication of a lot of users is affected by the failure. It is necessary to improve the reliability of a network by using a redundancy technique and thereby ensuring a detour path that is used when a failure occurs in a device.
For example, as illustrated in FIG. 1, the following technique has been proposed. In the technique, packet transfer devices that are a transmitting device and a receiving device each transfer a packet. The transmitting device copies a packet so as to generate a plurality of packets that are the same as the original packet. Then, the transmitting device transmits the generated packets over a plurality of communication paths to the receiving device. The receiving device selects a single packet from among the packets.
When the aforementioned redundancy technique is used, and a packet that propagates in one of the communication paths is lost, the receiving device may receive the same packet over the other communication path. In addition, when a packet that propagates in one of the communication paths is delayed, the receiving device may receive the same packet over the other communication path without a delay. Thus, the reliability of the network is improved.
Packet transfer devices that use redundant communication paths are disclosed in Japanese Laid-open Patent Publications Nos. 2007-209040 and 2009-147579 and Japanese Patents Nos. 4074268 and 4074304. In retransmission control that is performed in order to reliably transmit and receive a packet, a device that has received the packet transmits an ACK (acknowledgement response) to a device that has transmitted the packet in general. Specifically, when the receiving device receives the packet, the receiving device generates the ACK that includes information (a sequence number and the like) specifying the packet, and the receiving device transmits the ACK to the device that has transmitted the packet.
Thus, the transmitting device may confirm whether or not the receiving device has received the packet transmitted by the transmitting device. When the ACK is not received by the transmitting device, the transmitting device determines that the packet is not received by the receiving device, and the transmitting device retransmits the packet. Thus, the packet is reliably transmitted and received between the transmitting device and the receiving device.
However, when a wireless network is redundant in a simple manner, the following problem remains.
It is assumed that a wireless environment of one of redundant paths provided in a redundant wireless network becomes worse. Specifically, it is assumed that relay devices are sufficiently separated from each other and the wireless environment of only the one of the redundant paths becomes worse owing to the weather or the like, as illustrated in FIG. 2. Based on this assumption, the rate of only one of wireless links is easily reduced, and a packet is easily delayed or lost in the one of the wireless links.
Thus, a packet that is the same as a packet that has been already received by a receiving device over the other wireless link may be significantly delayed and received from a node located on the path whose wireless environment is worse. Therefore, transmission of the packet that is the same as the packet already received by the receiving device leads to waste of a wireless resource and is not preferable.
The aforementioned problem is described below in detail with reference to FIG. 2. As illustrated in FIG. 2, the relay devices are sufficiently separated from each other, and the quality of a wireless link that connects the transmitting device to the receiving device is reduced in one of the communication paths owing to a bad weather in some cases, or the link rate is reduced in some cases. When the link rate is reduced, a delay of transfer of a packet or a delay of buffering a packet increases in the communication path in which the quality of the wireless link is reduced.
Thus, a relay device that is located on the communication path in which the quality of the wireless link is reduced may delay transfer of a packet and transfer the packet that does not need to be transferred since the same packet has been received by the receiving device over the other communication path. The transfer of the packet is waste of the wireless resource.
In addition, a packet remains in a buffer until the packet is transferred. Thus, in the relay device, the buffer overflows since a packet that does not need to be transferred or is the same as the packet received from the other path by the receiving device remains in the buffer. This may cause a loss of the packet.
The same problem occurs not only when the link rate is reduced, but also when one of the plurality of paths that connect the receiving device to the transmitting device is much longer than the other path. It is highly likely that reception of a packet that is transferred over the longer path is delayed, compared with a packet that is transferred over the shorter path. Thus, a relay device that is located on the longer path may transfer a packet that is the same as a packet received by the receiving device over the other path and does not need to be transferred. The transfer of this packet leads to waste of the wireless resource.
It is considered that a packet is transferred only over a path that is one of redundant paths and whose link rate is higher than the other path in order to prevent such waste of a wireless resource. However, since the links are wireless, it is inevitable that a certain percentage of packets are lost. Thus, it is not realistic to transfer a packet only over the path whose link rate is higher than the other path. It is necessary to transfer the packet though the other path whose link rate is lower than the path.
Even when such a redundant configuration and general retransmission control are applied, and an ACK is transmitted in accordance with the general retransmission control, the transmitting device may only determine whether or not a packet that is transmitted by the transmitting device has been received. Thus, even when the ACK is transmitted in accordance with the general retransmission control, the aforementioned problem might not be solved.